A storage server is a computer system that performs data storage and retrieval for clients over a network. For example, a storage server may carry out read and write operations on behalf of clients while interacting with storage controllers that transparently manage underlying storage resources. Two methods of providing network accessible storage include network-attached storage (NAS) and storage area networks (SANs).
Network-attached storage (NAS) is a file-level storage system that provides clients with data access over a network. In addition, a storage area network (SAN) is a type of specialized high-speed network that interconnects clients with shared storage resources. Either type of distributed storage system may include storage controllers that implement low-level control over a group of storage drives to provide virtualized storage.
Storage nodes may be clustered together to provide high-availability data access. For example, two storage nodes may be configured so that when one node fails, the other node continues processing without interruption. In addition, another set of clustered storage nodes may exist in a different location for disaster recovery purposes. To provide such resiliency, the various storage nodes regularly exchange their logged information with one another. However, sharing the logged information uses network bandwidth, and the use of network bandwidth may be higher than an acceptable amount if the logged information is shared among a large number of nodes.